﻿using System;
using SubSonic.Schema;
using System.Collections.Generic;
using SubSonic.DataProviders;
using System.Data;

namespace WebeTerm.Model {
    
        #region 未定义
        /// <summary>
        /// Table: CommandLog
        /// Primary Key: Id
        /// </summary>
        public class CommandLogTable: DatabaseTable {
            public CommandLogTable(IDataProvider provider):base("CommandLog",provider){
                ClassName = "CommandLog";
                SchemaName = "dbo";
                //未定义
                Columns.Add(new DatabaseColumn("Id", this)
                {
                    IsPrimaryKey = true,
                    DataType = DbType.Int64,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 8,
                    PropertyName = "Id"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ConfigId", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = true,
                    MaxLength = 16,
                    PropertyName = "ConfigId"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CommandType", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "CommandType"
                });
                //未定义
                Columns.Add(new DatabaseColumn("SendString", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 1024,
                    PropertyName = "SendString"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ResultString", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 2048,
                    PropertyName = "ResultString"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ReceiveDate", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.DateTime,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 8,
                    PropertyName = "ReceiveDate"
                });
            }
            
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Id{
                get{
                    return this.GetColumn("Id");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ConfigId{
                get{
                    return this.GetColumn("ConfigId");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CommandType{
                get{
                    return this.GetColumn("CommandType");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn SendString{
                get{
                    return this.GetColumn("SendString");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ResultString{
                get{
                    return this.GetColumn("ResultString");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ReceiveDate{
                get{
                    return this.GetColumn("ReceiveDate");
                }
            }
        }
        #endregion
        
        #region 未定义
        /// <summary>
        /// Table: CompanyInfo
        /// Primary Key: Id
        /// </summary>
        public class CompanyInfoTable: DatabaseTable {
            public CompanyInfoTable(IDataProvider provider):base("CompanyInfo",provider){
                ClassName = "CompanyInfo";
                SchemaName = "dbo";
                //未定义
                Columns.Add(new DatabaseColumn("Id", this)
                {
                    IsPrimaryKey = true,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 16,
                    PropertyName = "Id"
                });
                //公司编码
                Columns.Add(new DatabaseColumn("CompanyCode", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "CompanyCode"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ComapnyName", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "ComapnyName"
                });
                //未定义
                Columns.Add(new DatabaseColumn("IsValid", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Boolean,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 1,
                    PropertyName = "IsValid"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ExpireDate", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.DateTime,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 8,
                    PropertyName = "ExpireDate"
                });
                //未定义
                Columns.Add(new DatabaseColumn("MaxEmployee", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Int32,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 4,
                    PropertyName = "MaxEmployee"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CommonEmail", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "CommonEmail"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CommonQQ", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 20,
                    PropertyName = "CommonQQ"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CommonWeiXinNo", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "CommonWeiXinNo"
                });
            }
            
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Id{
                get{
                    return this.GetColumn("Id");
                }
            }
            /// <summary>
            /// 获取列名：公司编码.
            /// </summary>
            /// <value>公司编码.</value>
            public IColumn CompanyCode{
                get{
                    return this.GetColumn("CompanyCode");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ComapnyName{
                get{
                    return this.GetColumn("ComapnyName");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn IsValid{
                get{
                    return this.GetColumn("IsValid");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ExpireDate{
                get{
                    return this.GetColumn("ExpireDate");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn MaxEmployee{
                get{
                    return this.GetColumn("MaxEmployee");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CommonEmail{
                get{
                    return this.GetColumn("CommonEmail");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CommonQQ{
                get{
                    return this.GetColumn("CommonQQ");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CommonWeiXinNo{
                get{
                    return this.GetColumn("CommonWeiXinNo");
                }
            }
        }
        #endregion
        
        #region 公司邮件队列
        /// <summary>
        /// Table: CompanyMailPool
        /// Primary Key: Id
        /// </summary>
        public class CompanyMailPoolTable: DatabaseTable {
            public CompanyMailPoolTable(IDataProvider provider):base("CompanyMailPool",provider){
                ClassName = "CompanyMailPool";
                SchemaName = "dbo";
                //未定义
                Columns.Add(new DatabaseColumn("Id", this)
                {
                    IsPrimaryKey = true,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 16,
                    PropertyName = "Id"
                });
                //邮件类型(ClearQ、PAT......)
                Columns.Add(new DatabaseColumn("MailTypeCode", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "MailTypeCode"
                });
                //未定义
                Columns.Add(new DatabaseColumn("Subject", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "Subject"
                });
                //未定义
                Columns.Add(new DatabaseColumn("Content", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 0,
                    PropertyName = "Content"
                });
                //未定义
                Columns.Add(new DatabaseColumn("To", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "To"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CC", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "CC"
                });
                //未定义
                Columns.Add(new DatabaseColumn("Bcc", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "Bcc"
                });
                //未定义
                Columns.Add(new DatabaseColumn("TryCount", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Int32,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 4,
                    PropertyName = "TryCount"
                });
                //未定义
                Columns.Add(new DatabaseColumn("LastTryDate", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.DateTime,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 8,
                    PropertyName = "LastTryDate"
                });
                //进入队列时间
                Columns.Add(new DatabaseColumn("EnqueueDate", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.DateTime,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 8,
                    PropertyName = "EnqueueDate"
                });
                //邮件任务状态（待处理、发送成功、发送失败）
                Columns.Add(new DatabaseColumn("TaskStatus", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Int32,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 4,
                    PropertyName = "TaskStatus"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CompanyId", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = true,
                    MaxLength = 16,
                    PropertyName = "CompanyId"
                });
            }
            
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Id{
                get{
                    return this.GetColumn("Id");
                }
            }
            /// <summary>
            /// 获取列名：邮件类型(ClearQ、PAT......).
            /// </summary>
            /// <value>邮件类型(ClearQ、PAT......).</value>
            public IColumn MailTypeCode{
                get{
                    return this.GetColumn("MailTypeCode");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Subject{
                get{
                    return this.GetColumn("Subject");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Content{
                get{
                    return this.GetColumn("Content");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn To{
                get{
                    return this.GetColumn("To");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CC{
                get{
                    return this.GetColumn("CC");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Bcc{
                get{
                    return this.GetColumn("Bcc");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn TryCount{
                get{
                    return this.GetColumn("TryCount");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn LastTryDate{
                get{
                    return this.GetColumn("LastTryDate");
                }
            }
            /// <summary>
            /// 获取列名：进入队列时间.
            /// </summary>
            /// <value>进入队列时间.</value>
            public IColumn EnqueueDate{
                get{
                    return this.GetColumn("EnqueueDate");
                }
            }
            /// <summary>
            /// 获取列名：邮件任务状态（待处理、发送成功、发送失败）.
            /// </summary>
            /// <value>邮件任务状态（待处理、发送成功、发送失败）.</value>
            public IColumn TaskStatus{
                get{
                    return this.GetColumn("TaskStatus");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CompanyId{
                get{
                    return this.GetColumn("CompanyId");
                }
            }
        }
        #endregion
        
        #region 公司发邮件服务配置
        /// <summary>
        /// Table: CompanyMailSMTP
        /// Primary Key: Id
        /// </summary>
        public class CompanyMailSMTPTable: DatabaseTable {
            public CompanyMailSMTPTable(IDataProvider provider):base("CompanyMailSMTP",provider){
                ClassName = "CompanyMailSMTP";
                SchemaName = "dbo";
                //未定义
                Columns.Add(new DatabaseColumn("Id", this)
                {
                    IsPrimaryKey = true,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 16,
                    PropertyName = "Id"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ServerAddress", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "ServerAddress"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ServerPort", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Int32,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 4,
                    PropertyName = "ServerPort"
                });
                //未定义
                Columns.Add(new DatabaseColumn("SMTPAccount", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "SMTPAccount"
                });
                //未定义
                Columns.Add(new DatabaseColumn("SMTPassword", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "SMTPassword"
                });
                //未定义
                Columns.Add(new DatabaseColumn("IsValid", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Boolean,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 1,
                    PropertyName = "IsValid"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CompanyId", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = true,
                    MaxLength = 16,
                    PropertyName = "CompanyId"
                });
            }
            
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Id{
                get{
                    return this.GetColumn("Id");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ServerAddress{
                get{
                    return this.GetColumn("ServerAddress");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ServerPort{
                get{
                    return this.GetColumn("ServerPort");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn SMTPAccount{
                get{
                    return this.GetColumn("SMTPAccount");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn SMTPassword{
                get{
                    return this.GetColumn("SMTPassword");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn IsValid{
                get{
                    return this.GetColumn("IsValid");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CompanyId{
                get{
                    return this.GetColumn("CompanyId");
                }
            }
        }
        #endregion
        
        #region 公司应用
        /// <summary>
        /// Table: CompanyPlugIns
        /// Primary Key: Id
        /// </summary>
        public class CompanyPlugInsTable: DatabaseTable {
            public CompanyPlugInsTable(IDataProvider provider):base("CompanyPlugIns",provider){
                ClassName = "CompanyPlugIns";
                SchemaName = "dbo";
                //未定义
                Columns.Add(new DatabaseColumn("Id", this)
                {
                    IsPrimaryKey = true,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 16,
                    PropertyName = "Id"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CompayId", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = true,
                    MaxLength = 16,
                    PropertyName = "CompayId"
                });
                //未定义
                Columns.Add(new DatabaseColumn("PlugInCode", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = true,
                    MaxLength = 255,
                    PropertyName = "PlugInCode"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ExpireDate", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.DateTime,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 8,
                    PropertyName = "ExpireDate"
                });
                //未定义
                Columns.Add(new DatabaseColumn("LastTryDate", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.DateTime,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 8,
                    PropertyName = "LastTryDate"
                });
                //轮询间隔
                Columns.Add(new DatabaseColumn("Interval", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Int32,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 4,
                    PropertyName = "Interval"
                });
                //插件配置JSON串
                Columns.Add(new DatabaseColumn("PlugInJSon", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 0,
                    PropertyName = "PlugInJSon"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ConfigId", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Guid,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 16,
                    PropertyName = "ConfigId"
                });
            }
            
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Id{
                get{
                    return this.GetColumn("Id");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CompayId{
                get{
                    return this.GetColumn("CompayId");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn PlugInCode{
                get{
                    return this.GetColumn("PlugInCode");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ExpireDate{
                get{
                    return this.GetColumn("ExpireDate");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn LastTryDate{
                get{
                    return this.GetColumn("LastTryDate");
                }
            }
            /// <summary>
            /// 获取列名：轮询间隔.
            /// </summary>
            /// <value>轮询间隔.</value>
            public IColumn Interval{
                get{
                    return this.GetColumn("Interval");
                }
            }
            /// <summary>
            /// 获取列名：插件配置JSON串.
            /// </summary>
            /// <value>插件配置JSON串.</value>
            public IColumn PlugInJSon{
                get{
                    return this.GetColumn("PlugInJSon");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ConfigId{
                get{
                    return this.GetColumn("ConfigId");
                }
            }
        }
        #endregion
        
        #region eTerm配置信息
        /// <summary>
        /// Table: ConfigurationInfo
        /// Primary Key: Id
        /// </summary>
        public class ConfigurationInfoTable: DatabaseTable {
            public ConfigurationInfoTable(IDataProvider provider):base("ConfigurationInfo",provider){
                ClassName = "ConfigurationInfo";
                SchemaName = "dbo";
                //未定义
                Columns.Add(new DatabaseColumn("Id", this)
                {
                    IsPrimaryKey = true,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 16,
                    PropertyName = "Id"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CompanyId", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = true,
                    MaxLength = 16,
                    PropertyName = "CompanyId"
                });
                //未定义
                Columns.Add(new DatabaseColumn("EmployeeId", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = true,
                    MaxLength = 16,
                    PropertyName = "EmployeeId"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ConfigType", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Int32,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 4,
                    PropertyName = "ConfigType"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ConfigAddress", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "ConfigAddress"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ConfigPort", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Int32,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 4,
                    PropertyName = "ConfigPort"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ConfigUserName", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "ConfigUserName"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ConfigUserPassword", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "ConfigUserPassword"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ConfigRID", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Int32,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 4,
                    PropertyName = "ConfigRID"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ConfigSID", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Int32,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 4,
                    PropertyName = "ConfigSID"
                });
                //未定义
                Columns.Add(new DatabaseColumn("SiText", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "SiText"
                });
                //配置状态（有效、无效、使用中）
                Columns.Add(new DatabaseColumn("StatusId", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Int32,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 4,
                    PropertyName = "StatusId"
                });
            }
            
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Id{
                get{
                    return this.GetColumn("Id");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CompanyId{
                get{
                    return this.GetColumn("CompanyId");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn EmployeeId{
                get{
                    return this.GetColumn("EmployeeId");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ConfigType{
                get{
                    return this.GetColumn("ConfigType");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ConfigAddress{
                get{
                    return this.GetColumn("ConfigAddress");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ConfigPort{
                get{
                    return this.GetColumn("ConfigPort");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ConfigUserName{
                get{
                    return this.GetColumn("ConfigUserName");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ConfigUserPassword{
                get{
                    return this.GetColumn("ConfigUserPassword");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ConfigRID{
                get{
                    return this.GetColumn("ConfigRID");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ConfigSID{
                get{
                    return this.GetColumn("ConfigSID");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn SiText{
                get{
                    return this.GetColumn("SiText");
                }
            }
            /// <summary>
            /// 获取列名：配置状态（有效、无效、使用中）.
            /// </summary>
            /// <value>配置状态（有效、无效、使用中）.</value>
            public IColumn StatusId{
                get{
                    return this.GetColumn("StatusId");
                }
            }
        }
        #endregion
        
        #region 客户信息
        /// <summary>
        /// Table: CustomerInfo
        /// Primary Key: Id
        /// </summary>
        public class CustomerInfoTable: DatabaseTable {
            public CustomerInfoTable(IDataProvider provider):base("CustomerInfo",provider){
                ClassName = "CustomerInfo";
                SchemaName = "dbo";
                //未定义
                Columns.Add(new DatabaseColumn("Id", this)
                {
                    IsPrimaryKey = true,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 16,
                    PropertyName = "Id"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CustomerName", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "CustomerName"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CustomerEName", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "CustomerEName"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CustomerIdNo", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "CustomerIdNo"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CustomerTelephone", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "CustomerTelephone"
                });
                //未定义
                Columns.Add(new DatabaseColumn("Email", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "Email"
                });
                //未定义
                Columns.Add(new DatabaseColumn("QQ", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 20,
                    PropertyName = "QQ"
                });
                //未定义
                Columns.Add(new DatabaseColumn("WeiXinNo", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "WeiXinNo"
                });
                //未定义
                Columns.Add(new DatabaseColumn("EmployeeId", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Guid,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = true,
                    MaxLength = 16,
                    PropertyName = "EmployeeId"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CompanyId", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Guid,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = true,
                    MaxLength = 16,
                    PropertyName = "CompanyId"
                });
            }
            
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Id{
                get{
                    return this.GetColumn("Id");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CustomerName{
                get{
                    return this.GetColumn("CustomerName");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CustomerEName{
                get{
                    return this.GetColumn("CustomerEName");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CustomerIdNo{
                get{
                    return this.GetColumn("CustomerIdNo");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CustomerTelephone{
                get{
                    return this.GetColumn("CustomerTelephone");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Email{
                get{
                    return this.GetColumn("Email");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn QQ{
                get{
                    return this.GetColumn("QQ");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn WeiXinNo{
                get{
                    return this.GetColumn("WeiXinNo");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn EmployeeId{
                get{
                    return this.GetColumn("EmployeeId");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CompanyId{
                get{
                    return this.GetColumn("CompanyId");
                }
            }
        }
        #endregion
        
        #region 员工信息
        /// <summary>
        /// Table: EmployeeInfo
        /// Primary Key: Id
        /// </summary>
        public class EmployeeInfoTable: DatabaseTable {
            public EmployeeInfoTable(IDataProvider provider):base("EmployeeInfo",provider){
                ClassName = "EmployeeInfo";
                SchemaName = "dbo";
                //未定义
                Columns.Add(new DatabaseColumn("Id", this)
                {
                    IsPrimaryKey = true,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 16,
                    PropertyName = "Id"
                });
                //未定义
                Columns.Add(new DatabaseColumn("EmployeeNo", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "EmployeeNo"
                });
                //未定义
                Columns.Add(new DatabaseColumn("EmployeeName", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "EmployeeName"
                });
                //未定义
                Columns.Add(new DatabaseColumn("Password", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 50,
                    PropertyName = "Password"
                });
                //未定义
                Columns.Add(new DatabaseColumn("ExpireDate", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.DateTime,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 8,
                    PropertyName = "ExpireDate"
                });
                //未定义
                Columns.Add(new DatabaseColumn("CompanyId", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Guid,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = true,
                    MaxLength = 16,
                    PropertyName = "CompanyId"
                });
                //订票用户标识
                Columns.Add(new DatabaseColumn("EmployeeFlag", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 50,
                    PropertyName = "EmployeeFlag"
                });
                //未定义
                Columns.Add(new DatabaseColumn("Email", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "Email"
                });
                //未定义
                Columns.Add(new DatabaseColumn("QQ", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 20,
                    PropertyName = "QQ"
                });
                //未定义
                Columns.Add(new DatabaseColumn("WeiXinNo", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = true,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "WeiXinNo"
                });
                //通知方式（邮件，微信，QQ）
                Columns.Add(new DatabaseColumn("ReceiveType", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Int32,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 4,
                    PropertyName = "ReceiveType"
                });
            }
            
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Id{
                get{
                    return this.GetColumn("Id");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn EmployeeNo{
                get{
                    return this.GetColumn("EmployeeNo");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn EmployeeName{
                get{
                    return this.GetColumn("EmployeeName");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Password{
                get{
                    return this.GetColumn("Password");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn ExpireDate{
                get{
                    return this.GetColumn("ExpireDate");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn CompanyId{
                get{
                    return this.GetColumn("CompanyId");
                }
            }
            /// <summary>
            /// 获取列名：订票用户标识.
            /// </summary>
            /// <value>订票用户标识.</value>
            public IColumn EmployeeFlag{
                get{
                    return this.GetColumn("EmployeeFlag");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Email{
                get{
                    return this.GetColumn("Email");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn QQ{
                get{
                    return this.GetColumn("QQ");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn WeiXinNo{
                get{
                    return this.GetColumn("WeiXinNo");
                }
            }
            /// <summary>
            /// 获取列名：通知方式（邮件，微信，QQ）.
            /// </summary>
            /// <value>通知方式（邮件，微信，QQ）.</value>
            public IColumn ReceiveType{
                get{
                    return this.GetColumn("ReceiveType");
                }
            }
        }
        #endregion
        
        #region 插件库
        /// <summary>
        /// Table: PlugIns
        /// Primary Key: PlugInCode
        /// </summary>
        public class PlugInsTable: DatabaseTable {
            public PlugInsTable(IDataProvider provider):base("PlugIns",provider){
                ClassName = "PlugIns";
                SchemaName = "dbo";
                //未定义
                Columns.Add(new DatabaseColumn("PlugInCode", this)
                {
                    IsPrimaryKey = true,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "PlugInCode"
                });
                //未定义
                Columns.Add(new DatabaseColumn("PlugInAssembly", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 2000,
                    PropertyName = "PlugInAssembly"
                });
                //未定义
                Columns.Add(new DatabaseColumn("PlugInName", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.String,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 255,
                    PropertyName = "PlugInName"
                });
                //未定义
                Columns.Add(new DatabaseColumn("Sequence", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Int32,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 4,
                    PropertyName = "Sequence"
                });
                //未定义
                Columns.Add(new DatabaseColumn("IsValid", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Boolean,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 1,
                    PropertyName = "IsValid"
                });
                //是否为公共用应
                Columns.Add(new DatabaseColumn("IsPublic", this)
                {
                    IsPrimaryKey = false,
                    DataType = DbType.Boolean,
                    IsNullable = false,
                    AutoIncrement = false,
                    IsForeignKey = false,
                    MaxLength = 1,
                    PropertyName = "IsPublic"
                });
            }
            
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn PlugInCode{
                get{
                    return this.GetColumn("PlugInCode");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn PlugInAssembly{
                get{
                    return this.GetColumn("PlugInAssembly");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn PlugInName{
                get{
                    return this.GetColumn("PlugInName");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn Sequence{
                get{
                    return this.GetColumn("Sequence");
                }
            }
            /// <summary>
            /// 获取列名：未定义.
            /// </summary>
            /// <value>未定义.</value>
            public IColumn IsValid{
                get{
                    return this.GetColumn("IsValid");
                }
            }
            /// <summary>
            /// 获取列名：是否为公共用应.
            /// </summary>
            /// <value>是否为公共用应.</value>
            public IColumn IsPublic{
                get{
                    return this.GetColumn("IsPublic");
                }
            }
        }
        #endregion
        
}        